package com.ruicar.afs.cloud.contract.gateway.entity;

import com.baomidou.mybatisplus.annotation.TableName;
import com.ruicar.afs.cloud.common.core.entity.BaseEntity;
import com.ruicar.afs.cloud.common.modules.enums.SystemType;
import com.ruicar.afs.cloud.contract.gateway.enums.ApiStatus;
import com.ruicar.afs.cloud.contract.gateway.enums.RequestType;
import lombok.Data;

/**
 * The type GateWaySystemMapping
 * <p>Description: </p>
 *
 * @author Fzero
 * @version 1.0
 * @date Created on 2020.07.20 21:17:41
 * @since 1.0
 */
@TableName("gateway_system_mapping")
@Data
public class GateWaySystemMapping extends BaseEntity<GateWaySystemMapping> {
    /** api映射id */
    private Long apiId ;
    /** 映射名 */
    private String mappingName ;
    /** 目标系统类型 */
    private SystemType systemType ;
    /** 请求类型;get;post */
    private RequestType requestMethod ;
    /** 请求地址 */
    private String targetUrl ;
    /** 请求附加参数;附加参数，JSON格式数据 */
    private String extParams ;
    /** 附加http头;附加http头，json格式数据 */
    private String extHeaders ;
    /** 目标系统状态;online;mock */
    private ApiStatus status ;
    /** 校验调用是否成功字段取值表达式 */
    private String checkExpress ;
    /** 调用成功值 */
    private String successValue ;
    /** 分页接口值记录总数取值表达式 */
    private String totalExpress ;
    /** 分页接口数据记录表达式 */
    private String recodeExpress ;
    /** 分页接口跳过多少行表达式 */
    private String skipCountExpress ;
    /** 分页接口获取多少行表达式 */
    private String loadCountExpress ;
    /** 别名;普通接口用，
     普通接口调用接口后返回JSON体会按照该别名，放到数据处理JSON体里，然后再做聚合处理
     { alias:接口返回对象}
     输出里配置时从，自定义别名开始,如要映射返回体{a:b}字段a，则在输出里配置alias.a */
    private String responseAlias ;
    /** mock值 */
    private String mockJson ;

    private String resultConvert;
}
